<?php
class ModelDelimanKhachhang extends Model 
{
	public function getList($where = "")
	{
		$query = $this->db->query("Select `dlm_khachhang`.* from `dlm_khachhang` where 1=1 ".$where);
		return $query->rows;
	}
	
	public function getItem($khachhangid)
	{
		$sql = "Select * from `dlm_khachhang` where khachhangid = '".$khachhangid."'";
		$query = $this->db->query($sql);
		return $query->row;
	}
	
	public function getItemKhuVuc($khuvucid)
	{
		$sql = "Select * from `dlm_khachhang` where khuvucid = '".$khuvucid."'";
		$query = $this->db->query($sql);
		return $query->row;
	}
	
	private function createMakhachhang($prefix)
	{
		return $this->db->getNextIdVarChar("dlm_khachhang","masokhachhang",$prefix);	
	}
		
	public function insert($data)
	{
		$masokhachhang=$this->createMakhachhang('KH');
		$hoten=$this->db->escape(@$data['hoten']);
		$sonha=$this->db->escape(@$data['sonha']);
		$khuvucid=$this->db->escape(@$data['khuvucid']);
		$email=$this->db->escape(@$data['email']);
		$diachi=$this->db->escape(@$data['diachi']);
		$dienthoai=$this->db->escape(@$data['dienthoai']);
		$ghichu=$this->db->escape(@$data['ghichu']);
		$nhanvienphutrachid=$this->db->escape(@$data['nhanvienphutrachid']);
				
		$field=array(
						'masokhachhang',
						'hoten',
						'sonha',
						'khuvucid',
						'email',
						'diachi',
						'dienthoai',
						'ghichu',
						'nhanvienphutrachid'
					);
		$value=array(
						$masokhachhang,
						$hoten,
						$sonha,
						$khuvucid,
						$email,
						$diachi,
						$dienthoai,
						$ghichu,
						$nhanvienphutrachid
					);
		$getLastId = $this->db->insertData("dlm_khachhang",$field,$value);
		
		//nhthoai: cập nhật
		//Ghi nhật ký hệ thống: bắt đầu
		$nkht = array(
							'ngaythaotac'=>$this->date->getToday(),
							'chucnang'=>"Quản lý khách hàng",
							'hanhdong'=>"Thêm",
							'csdl'=>"dlm_khachhang[".$getLastId."]",
							'nhanvienid'=>$this->user->getNhanVien('nhanvienid'),
							'masonhanvien'=>$this->user->getNhanVien('masonhanvien'),
							'tennhanvien'=>$this->user->getNhanVien('hoten'),
							'truongdulieu'=>"khachhangid",
							'dulieucu'=>"",
							'dulieumoi'=>$getLastId
							);
		$this->load->model('deliman/nhatkyhethong');
		$this->model_deliman_nhatkyhethong->insert($nkht);
		//Ghi nhật ký hệ thống: kết thúc
		
		return $getLastId;
	}
	
	public function update($data)
	{
		$khachhangid=$this->db->escape(@$data['khachhangid']);
		$masokhachhang=$this->db->escape(@$data['masokhachhang']);
		$hoten=$this->db->escape(@$data['hoten']);
		$sonha=$this->db->escape(@$data['sonha']);
		$khuvucid=$this->db->escape(@$data['khuvucid']);
		$email=$this->db->escape(@$data['email']);
		$diachi=$this->db->escape(@$data['diachi']);
		$dienthoai=$this->db->escape(@$data['dienthoai']);
		$ghichu=$this->db->escape(@$data['ghichu']);
		$nhanvienphutrachid=$this->db->escape(@$data['nhanvienphutrachid']);
				
		$field=array(
						'masokhachhang',
						'hoten',
						'sonha',
						'khuvucid',
						'email',
						'diachi',
						'dienthoai',
						'ghichu',
						'nhanvienphutrachid'
					);
		$value=array(
						$masokhachhang,
						$hoten,
						$sonha,
						$khuvucid,
						$email,
						$diachi,
						$dienthoai,
						$ghichu,
						$nhanvienphutrachid
					);
		
		//nhthoai: cập nhật
		//Ghi nhật ký hệ thống: bắt đầu
		$nkht_1 = array(
							'ngaythaotac'=>$this->date->getToday(),
							'chucnang'=>"Quản lý khách hàng",
							'hanhdong'=>"Sửa",
							'csdl'=>"deliman_kybao[".$khachhangid."]",
							'nhanvienid'=>$this->user->getNhanVien('nhanvienid'),
							'masonhanvien'=>$this->user->getNhanVien('masonhanvien'),
							'tennhanvien'=>$this->user->getNhanVien('hoten')
							);
		$khachhang = $this->getItem($khachhangid);
		foreach($data as $key=>$dulieumoi)
		{	
			if(trim($khachhang[$key]) != trim($dulieumoi))
			{
				$nkht = array();
				$nkht_2 = array(
								'truongdulieu'=>"'".$key."'",
								'dulieucu'=>"'".$khachhang[$key]."'",
								'dulieumoi'=>"'".$dulieumoi."'",
								);
				$nkht = array_merge($nkht_1, $nkht_2);
				$this->load->model('deliman/nhatkyhethong');
				$this->model_deliman_nhatkyhethong->insert($nkht);	
			}
		}
		//Ghi nhật ký hệ thống: kết thúc
		
		$where="khachhangid = '".$khachhangid."'";
		$this->db->updateData("dlm_khachhang",$field,$value,$where);
	}	
	
	public function updateCol($khachhangid,$col,$val)
	{
		$khachhangid=$this->db->escape(@$khachhangid);
		$col=$this->db->escape(@$col);
		$val=$this->db->escape(@$val);
				
		$field=array(
						$col
					);
		$value=array(
						$val
					);
					
		$where="khachhangid = '".$khachhangid."'";
		$this->db->updateData("dlm_khachhang",$field,$value,$where);
	}	
			
	public function delete($khachhangid)
	{
		$id=$this->db->escape(@$khachhangid);
		
		//nhthoai: cập nhật
		//Ghi nhật ký hệ thống: bắt đầu
		$nkht = array(
							'ngaythaotac'=>$this->date->getToday(),
							'chucnang'=>"Quản lý khách hàng",
							'hanhdong'=>"Xóa",
							'csdl'=>"dlm_khachhang[".$id."]",
							'nhanvienid'=>$this->user->getNhanVien('nhanvienid'),
							'masonhanvien'=>$this->user->getNhanVien('masonhanvien'),
							'tennhanvien'=>$this->user->getNhanVien('hoten'),
							'truongdulieu'=>"khachhangid",
							'dulieucu'=>"",
							'dulieumoi'=>$id
							);
		$this->load->model('deliman/nhatkyhethong');
		$this->model_deliman_nhatkyhethong->insert($nkht);
		//Ghi nhật ký hệ thống: kết thúc
		
		$where="khachhangid = '".$khachhangid."'";
		$this->db->deleteData('dlm_khachhang',$where);
	}
	
	public function deletes($data)
	{
		foreach($data as $khachhangid)
		{
			$this->delete($khachhangid);
		}		
	}
	
	//Thong tin dat bao
	public function getThongTinDatBao($id)
	{
		$sql = "Select * 
						from `dlm_thongtindatbao` 
						where id ='".$id."'";
		$query = $this->db->query($sql);
		return $query->row;	
	}
	public function sumSoLuongGiaoBao($where="")
	{
		$sql = "SELECT *, sum( soluongdagiao ) AS thucgiao
				FROM `dlm_thongtindatbao`
				WHERE 1=1 ".$where;
		$query = $this->db->query($sql);
		return $query->row;	
	}
	
	
	public function sumSoLuongBaoDat($khachhangid)
	{
		$sql = "SELECT *, sum( soluongdat ) AS soluongdat
				FROM `dlm_thongtindatbao`
				WHERE khachhangid = '".$khachhangid."' AND trangthai <> 'huy'
				GROUP BY khachhangid
				";
		$query = $this->db->query($sql);
		return $query->row;	
	}
	
	
	public function getThongTinDatBaoListTheoKhachhang($khachhangid)
	{
		$sql = "SELECT khachhangid,tenkybao,ngaydat,nhanviengiaoid,tenhanviengiao, sum( soluongdat ) AS soluongdat,sum(soluongdagiao) as soluonggiao, max(ngaygiao) as ngaygiaogannhat
					FROM `dlm_thongtindatbao`
					WHERE khachhangid ='".$khachhangid."' GROUP BY khachhangid" ;
			
		$query = $this->db->query($sql);
		return $query->row;
	}
	
	
	
	public function getThongTinDatBaoList($where="")
	{
		$sql = "Select `dlm_thongtindatbao`.* 
									from `dlm_thongtindatbao` 
									where 1=1 " . $where ;
			
		$query = $this->db->query($sql);
		return $query->rows;
	}
	public function saveThongTinDatBao($data)
	{
		$id=(int)@$data['id'];
		$kybaoid=$this->db->escape(@$data['kybaoid']);
		$sokybao=$this->db->escape(@$data['sokybao']);
		$tenkybao=$this->db->escape(@$data['tenkybao']);
		$loaibaoid=$this->db->escape(@$data['loaibaoid']);
		$tenloaibao=$this->db->escape(@$data['tenloaibao']);
		$khachhangid=$this->db->escape(@$data['khachhangid']);
		$soluongdat=$this->db->escape(@$data['soluongdat']);
		$ngaydat=$this->db->escape(@$data['ngaydat']);
		$ngayphathanh=$this->db->escape(@$data['ngayphathanh']);
		$nhanviengiaoid=$this->db->escape(@$data['nhanviengiaoid']);
		$masonhanviengiao=$this->db->escape(@$data['masonhanviengiao']);
		$tenhanviengiao=$this->db->escape(@$data['tenhanviengiao']);
		$soluongdagiao=$this->db->escape(@$data['soluongdagiao']);
		$ngaygiao=$this->db->escape(@$data['ngaygiao']);
		$comment=$this->db->escape(@$data['comment']);
		$trangthai=$this->db->escape(@$data['trangthai']);
		
		$field=array(
						'kybaoid',
						'sokybao',
						'tenkybao',
						'loaibaoid',
						'tenloaibao',
						'khachhangid',
						'soluongdat',
						'ngaydat',
						'ngayphathanh',
						'nhanviengiaoid',
						'masonhanviengiao',
						'tenhanviengiao',
						'soluongdagiao',
						'ngaygiao',
						'comment',
						'trangthai'
					);
		$value=array(
						$kybaoid,
						$sokybao,
						$tenkybao,
						$loaibaoid,
						$tenloaibao,
						$khachhangid,
						$soluongdat,
						$ngaydat,
						$ngayphathanh,
						$nhanviengiaoid,
						$masonhanviengiao,
						$tenhanviengiao,
						$soluongdagiao,
						$ngaygiao,
						$comment,
						$trangthai
					);
		//print_r($data);
		if($id==0)
		{
			
			$this->db->insertData("dlm_thongtindatbao",$field,$value);
			$id = $this->db->getLastId();
			
			//nhthoai: cập nhật
			//Ghi nhật ký hệ thống: bắt đầu
			$nkht = array(
								'ngaythaotac'=>$this->date->getToday(),
								'chucnang'=>"Quản lý khách hàng",
								'hanhdong'=>"Thêm mới thông tin đặt báo cho khách hàng",
								'csdl'=>"dlm_thongtindatbao[".$id."]",
								'nhanvienid'=>$this->user->getNhanVien('nhanvienid'),
								'masonhanvien'=>$this->user->getNhanVien('masonhanvien'),
								'tennhanvien'=>$this->user->getNhanVien('hoten'),
								'truongdulieu'=>"id",
								'dulieucu'=>"",
								'dulieumoi'=>$id
								);
			$this->load->model('deliman/nhatkyhethong');
			$this->model_deliman_nhatkyhethong->insert($nkht);
			//Ghi nhật ký hệ thống: kết thúc
		}
		else
		{
			//nhthoai: cập nhật
			//Ghi nhật ký hệ thống: bắt đầu
			$nkht_1 = array(
								'ngaythaotac'=>$this->date->getToday(),
								'chucnang'=>"Quản lý kỳ báo",
								'hanhdong'=>"Sửa thông tin đặt báo",
								'csdl'=>"dlm_thongtindatbao[".$id."]",
								'nhanvienid'=>$this->user->getNhanVien('nhanvienid'),
								'masonhanvien'=>$this->user->getNhanVien('masonhanvien'),
								'tennhanvien'=>$this->user->getNhanVien('hoten')
								);
			$ttdb = $this->getThongTinDatBao($id);
			foreach($data as $key=>$dulieumoi)
			{	
				if(trim($key) == trim("ngaydat") || trim($key) == trim("ngaygiao") || trim($key) == trim("ngayphathanh"))
				{
					$dulieumoi = $this->date->formatMySQLDate($dulieumoi);
					$ttdb[$key] = $this->date->formatMySQLDate($ttdb[$key]);						 
				}
				if(trim($ttdb[$key]) != trim($dulieumoi))
				{
					$nkht = array();
					$nkht_2 = array(
									'truongdulieu'=>"'".$key."'",
									'dulieucu'=>"'".$ttdb[$key]."'",
									'dulieumoi'=>"'".$dulieumoi."'",
									);
					$nkht = array_merge($nkht_1, $nkht_2);
					$this->load->model('deliman/nhatkyhethong');
					$this->model_deliman_nhatkyhethong->insert($nkht);	
				}
			}
			//Ghi nhật ký hệ thống: kết thúc	
			$where="id = '".$id."'";
			$this->db->updateData('dlm_thongtindatbao',$field,$value,$where);
		}
		return $id;
	}
	
	public function updateThongTinDatBao($id,$col,$val)
	{
		$id = $this->db->escape(@$id);
		$col=$this->db->escape(@$col);
		$val=$this->db->escape(@$val);
		
		//nhthoai: cập nhật
		  //Ghi nhật ký hệ thống: bắt đầu
		$ttdt = $this->getThongTinDatBao($id);
		$nkht = array(
						  'ngaythaotac'=>$this->date->getToday(),
						  'chucnang'=>"Cập nhật kỳ báo đã giao",
						  'hanhdong'=>"Sửa",
						  'csdl'=>"dlm_thongtindatbao",
						  'nhanvienid'=>$this->user->getNhanVien('nhanvienid'),
						  'masonhanvien'=>$this->user->getNhanVien('masonhanvien'),
						  'tennhanvien'=>$this->user->getNhanVien('hoten'),
						  'truongdulieu'=>$col,
						  'dulieucu'=>$ttdt[$col],
						  'dulieumoi'=>$val
					  );
		$this->load->model('deliman/nhatkyhethong');
		$this->model_deliman_nhatkyhethong->insert($nkht);
		  //Ghi nhật ký hệ thống: kết thúc
		
		$field=array(
						$col
						
					);
		$value=array(
						$val
					);
		
		$where="id = '".$id."'";
		$this->db->updateData('dlm_thongtindatbao',$field,$value,$where);
	}
	
	public function deleteThongTinDatBao($id)
	{
		$id = $this->db->escape(@$id);		
		$where="id = '".$id."'";
		$this->db->deleteData('dlm_thongtindatbao',$where);
		
	}
}

?>